package com.itheima.demo04;

public class BubbleDemo01 {
    public static void main(String[] args) {
        //冒泡排序
        //就是把数组中两两相邻的元素进行比较，比较的结果大的放右边，小的放做左边。就是交互两个元素之前的位置
        //1.定义数据
        int[] arr = {2, 4, 5, 3, 1};


        /*//第一轮比较
        for (int i = 0; i < arr.length - 1; i++) {
            //相邻就是 i,i+1
            if (arr[i] > arr[i + 1]) {//如果前者大于后者，则交互位置
                int temp = arr[i];
                arr[i] = arr[i + 1];
                arr[i + 1] = temp;
            }
        }

        //第二轮比较
        for (int i = 0; i < arr.length - 1 - 1; i++) {
            //相邻就是 i,i+1
            if (arr[i] > arr[i + 1]) {//如果前者大于后者，则交互位置
                int temp = arr[i];
                arr[i] = arr[i + 1];
                arr[i + 1] = temp;
            }
        }
        //第三轮比较
        for (int i = 0; i < arr.length - 1 - 2; i++) {
            //相邻就是 i,i+1
            if (arr[i] > arr[i + 1]) {//如果前者大于后者，则交互位置
                int temp = arr[i];
                arr[i] = arr[i + 1];
                arr[i + 1] = temp;
            }
        }
        //第四轮比较
        for (int i = 0; i < arr.length - 1 - 3; i++) {
            //相邻就是 i,i+1
            if (arr[i] > arr[i + 1]) {//如果前者大于后者，则交互位置
                int temp = arr[i];
                arr[i] = arr[i + 1];
                arr[i + 1] = temp;
            }
        }*/
        //简化整合
        for (int j = 0; j < arr.length - 1; j++) {
            for (int i = 0; i < arr.length - 1 - j; i++) {
                //相邻就是 i,i+1
                if (arr[i] > arr[i + 1]) {//如果前者大于后者，则交互位置
                    int temp = arr[i];
                    arr[i] = arr[i + 1];
                    arr[i + 1] = temp;
                }
            }
        }

        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i] + " ");
        }

    }
}
